iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 23
0

前言:

  • 前面幾天說了很多關於Istio相關的內容主軸來說Istio提供一個網路層的服務,今天就來說說如何去找尋錯誤log

Istio Log:

  • Istio 中有提供Getting Envoy's Access Logs服務,在安裝Istio時預設會是關閉的他會在Ingressgateway value 中的accessLogFile 這個key去做設定當value為空字串相當於關閉狀態,如果需要開啟Access Log只需要把value設定成/dev/stdout即可開啟此功能,可說是相當容易的操作手法,另外因為此Log是在服務的Sidecar上去做log動作所以該服務必須要是有inject istio-proxy這個pod才會有作用可已經有k9s這個軟體看到如下圖:

https://ithelp.ithome.com.tw/upload/images/20200921/20129516Vh26hnE6JQ.png

  • log的形式大致上就是nginx的 access.log一樣,他會記錄下每一條的api的流入,這邊提供一下範例以下是自己寫的簡單服務,上面有提供gRPC POST API 與聽NSQ訊號這兩件事情在,在istio-proxy下會往整的記錄下來所有相關的access log如下圖:

https://ithelp.ithome.com.tw/upload/images/20200921/20129516M7k3YLN4Iu.png

結論:

  • 在Istio中若有需求紀錄access log可以在安裝istio時開啟accessLogFile:"/dev/stdout"這個動作,之後相關服務(Pod)只要有注入Istio-proxy Istio就會主動幫你記錄下request紀錄與錯誤,但相對的會使用較多的空間去紀錄它。

上一篇
如何更新Istio
下一篇
GCP K8S Istio建置(一)
系列文
淺談 Istio30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言